// noinspection JSUnresolvedReference /** * Field Google Map */ /* global jQuery, document, redux_change, redux, google */ (function ( $ ) { 'use strict'; redux.field_objects = redux.field_objects || {}; redux.field_objects.google_maps = redux.field_objects.google_maps || {}; /* LIBRARY INIT */ redux.field_objects.google_maps.init = function ( selector ) { if ( ! selector ) { selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-google_maps:visible' ); } $( selector ).each( function ( i ) { let delayRender; const el = $( this ); let parent = el; if ( ! el.hasClass( 'redux-field-container' ) ) { parent = el.parents( '.redux-field-container:first' ); } if ( parent.is( ':hidden' ) ) { return; } if ( parent.hasClass( 'redux-field-init' ) ) { parent.removeClass( 'redux-field-init' ); } else { return; } // Check for delay render, which is useful for calling a map // render after JavaScript load. delayRender = Boolean( el.find( '.redux_framework_google_maps' ).data( 'delay-render' ) ); // API Key button. redux.field_objects.google_maps.clickHandler( el ); // Init our maps. redux.field_objects.google_maps.initMap( el, i, delayRender ); } ); }; /* INIT MAP FUNCTION */ redux.field_objects.google_maps.initMap = async function ( el, idx, delayRender ) { let delayed; let scrollWheel; let streetView; let mapType; let address; let defLat; let defLong; let defaultZoom; let mapOptions; let geocoder; let g_autoComplete; let g_LatLng; let g_map; let noLatLng = false; // Pull the map class. const mapClass = el.find( '.redux_framework_google_maps' ); const containerID = mapClass.attr( 'id' ); const autocomplete = containerID + '_autocomplete'; const canvas = containerID + '_map_canvas'; const canvasId = $( '#' + canvas ); const latitude = containerID + '_latitude'; const longitude = containerID + '_longitude'; // Add map index to data attr. // Why, say we want to use delay_render, // and want to init the map later on. // You'd need the index number in the // event of multiple map instances. // This allows one to retrieve it // later. $( mapClass ).attr( 'data-idx', idx ); if ( true === delayRender ) { return; } // Map has been rendered, no need to process again. if ( $( '#' + containerID ).hasClass( 'rendered' ) ) { return; } // If a map is set to delay render and has been initiated // from another scrip, add the 'render' class so rendering // does not occur. // It messes things up. delayed = Boolean( mapClass.data( 'delay-render' ) ); if ( true === delayed ) { mapClass.addClass( 'rendered' ); } // Create the autocomplete object, restricting the search // to geographical location types. g_autoComplete = await google.maps.importLibrary( 'places' ); g_autoComplete = new google.maps.places.Autocomplete( document.getElementById( autocomplete ), {types: ['geocode']} ); // Data bindings. scrollWheel = Boolean( mapClass.data( 'scroll-wheel' ) ); streetView = Boolean( mapClass.data( 'street-view' ) ); mapType = Boolean( mapClass.data( 'map-type' ) ); address = mapClass.data( 'address' ); address = decodeURIComponent( address ); address = address.trim(); // Set default Lat/lng. defLat = canvasId.data( 'default-lat' ); defLong = canvasId.data( 'default-long' ); defaultZoom = canvasId.data( 'default-zoom' ); // Eval whether to set maps based on lat/lng or address. if ( '' !== address ) { if ( '' === defLat || '' === defLong ) { noLatLng = true; } } else { noLatLng = false; } // Can't have empty values, or the map API will complain. // Set default for the middle of the United States. defLat = defLat ? defLat : 39.11676722061108; defLong = defLong ? defLong : -100.47761000000003; if ( noLatLng ) { // If displaying a map based on an address. geocoder = new google.maps.Geocoder(); // Set up Geocode and pass address. geocoder.geocode( {'address': address}, function ( results, status ) { let latitude; let longitude; // Function results. if ( status === google.maps.GeocoderStatus.OK ) { // A good address was passed. g_LatLng = results[0].geometry.location; // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); // Get and set lat/long data. latitude = el.find( '#' + containerID + '_latitude' ); latitude.val( results[0].geometry.location.lat() ); longitude = el.find( '#' + containerID + '_longitude' ); longitude.val( results[0].geometry.location.lng() ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } else { // No data found, alert the user. alert( 'Geocode was not successful for the following reason: ' + status ); } } ); } else { // If displaying map based on an lat/lng. g_LatLng = new google.maps.LatLng( defLat, defLong ); // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, // Start off far unless an item is selected, set by php. streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create the map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } }; redux.field_objects.google_maps.renderControls = function ( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ) { let markerTooltip; let infoWindow; let g_marker; let geoAlert = mapClass.data( 'geo-alert' ); // Get HTML. const input = document.getElementById( autocomplete ); // Set objects into the map. g_map.controls[google.maps.ControlPosition.TOP_LEFT].push( input ); // Bind objects to the map. g_autoComplete = new google.maps.places.Autocomplete( input ); g_autoComplete.bindTo( 'bounds', g_map ); // Get the marker tooltip data. markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Create infoWindow. infoWindow = new google.maps.InfoWindow(); // Create marker. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), draggable: true, title: markerTooltip, animation: google.maps.Animation.DROP } ); geoAlert = decodeURIComponent( geoAlert ); // Place change. google.maps.event.addListener( g_autoComplete, 'place_changed', function () { let place; let address; let markerTooltip; infoWindow.close(); // Get place data. place = g_autoComplete.getPlace(); // Display alert if something went wrong. if ( ! place.geometry ) { window.alert( geoAlert ); return; } console.log( place.geometry.viewport ); // If the place has a geometry, then present it on a map. if ( place.geometry.viewport ) { g_map.fitBounds( place.geometry.viewport ); } else { g_map.setCenter( place.geometry.location ); g_map.setZoom( 17 ); // Why 17? Because it looks good. } markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Set the marker icon. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), title: markerTooltip, clickable: true, draggable: true, animation: google.maps.Animation.DROP } ); // Set marker position and display. g_marker.setPosition( place.geometry.location ); g_marker.setVisible( true ); // Form array of address components. address = ''; if ( place.address_components ) { address = [( place.address_components[0] && place.address_components[0].short_name || '' ), ( place.address_components[1] && place.address_components[1].short_name || '' ), ( place.address_components[2] && place.address_components[2].short_name || '' )].join( ' ' ); } // Set the default marker info window with address data. infoWindow.setContent( '
' + place.name + '
' + address ); infoWindow.open( g_map, g_marker ); // Run Geolocation. redux.field_objects.google_maps.geoLocate( g_autoComplete ); // Fill in address inputs. redux.field_objects.google_maps.fillInAddress( el, latitude, longitude, g_autoComplete ); } ); // Marker drag. google.maps.event.addListener( g_marker, 'drag', function ( event ) { document.getElementById( latitude ).value = event.latLng.lat(); document.getElementById( longitude ).value = event.latLng.lng(); } ); // End marker drag. google.maps.event.addListener( g_marker, 'dragend', function () { redux_change( el.find( '.redux_framework_google_maps' ) ); } ); // Zoom Changed. g_map.addListener( 'zoom_changed', function () { el.find( '.google_m_zoom_input' ).val( g_map.getZoom() ); } ); // Marker Info Window. infoWindow = new google.maps.InfoWindow(); google.maps.event.addListener( g_marker, 'click', function () { const marker_info = containerID + '_marker_info'; const infoValue = document.getElementById( marker_info ).value; if ( '' !== infoValue ) { infoWindow.setContent( infoValue ); infoWindow.open( g_map, g_marker ); } } ); }; /* FILL IN ADDRESS FUNCTION */ redux.field_objects.google_maps.fillInAddress = function ( el, latitude, longitude, g_autoComplete ) { // Set variables. const containerID = el.find( '.redux_framework_google_maps' ).attr( 'id' ); // What if someone only wants city, or state, ect... // gotta do it this way to check for the address! // Need to check each of the returned components to see what is returned. const componentForm = { street_number: 'short_name', route: 'long_name', locality: 'long_name', administrative_area_level_1: 'short_name', country: 'long_name', postal_code: 'short_name' }; // Get the place details from the autocomplete object. const place = g_autoComplete.getPlace(); let component; let i; let addressType; let _d_addressType; let val; let len; document.getElementById( latitude ).value = place.geometry.location.lat(); document.getElementById( longitude ).value = place.geometry.location.lng(); for ( component in componentForm ) { if ( componentForm.hasOwnProperty( component ) ) { // Push in the dynamic form element ID again. component = containerID + '_' + component; // Assign to proper place. document.getElementById( component ).value = ''; document.getElementById( component ).disabled = false; } } // Get each component of the address from the place details // and fill the corresponding field on the form. len = place.address_components.length; for ( i = 0; i < len; i += 1 ) { addressType = place.address_components[i].types[0]; if ( componentForm[addressType] ) { // Push in the dynamic form element ID again. _d_addressType = containerID + '_' + addressType; // Get the original. val = place.address_components[i][componentForm[addressType]]; // Assign to proper place. document.getElementById( _d_addressType ).value = val; } } }; redux.field_objects.google_maps.geoLocate = function ( g_autoComplete ) { if ( navigator.geolocation ) { navigator.geolocation.getCurrentPosition( function ( position ) { const geolocation = new google.maps.LatLng( position.coords.latitude, position.coords.longitude ); const circle = new google.maps.Circle( { center: geolocation, radius: position.coords.accuracy } ); g_autoComplete.setBounds( circle.getBounds() ); } ); } }; /* API BUTTON CLICK HANDLER */ redux.field_objects.google_maps.clickHandler = function ( el ) { // Find the API Key button and react on click. el.find( '.google_m_api_key_button' ).on( 'click', function () { // Find message wrapper. const wrapper = el.find( '.google_m_api_key_wrapper' ); if ( wrapper.is( ':visible' ) ) { // If the wrapper is visible, close it. wrapper.slideUp( 'fast', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } else { // If the wrapper is visible, open it. wrapper.slideDown( 'medium', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } } ); el.find( '.google_m_autocomplete' ).on( 'keypress', function ( e ) { if ( 13 === e.keyCode ) { e.preventDefault(); } } ); // Auto select autocomplete contents, // since Google doesn't do this inherently. el.find( '.google_m_autocomplete' ).on( 'click', function ( e ) { $( this ).trigger( 'focus' ); $( this ).trigger( 'select' ); e.preventDefault(); } ); }; } )( jQuery ); Pinco Казино – Официальный сайт Пинко вход на зеркало – Orchid Group
Warning: Undefined variable $encoded_url in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Deprecated: base64_decode(): Passing null to parameter #1 ($string) of type string is deprecated in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Pinco Казино – Официальный сайт Пинко вход на зеркало

В современном мире азартных игр, где каждый день становится все более популярным, казино Pinco является одним из наиболее надежных и популярных игровых ресурсов. Сайт Pinco Казино предлагает игрокам широкий спектр азартных игр, включая слоты, карточные игры, рулетку и другие, что позволяет каждому найти что-то для себя.

Официальный сайт Pinco Казино – это место, где игроки могут не только играть, но и получать различные бонусы и преимущества. В частности, новый игрок может получить приветственный бонус, а также другие бонусы и акции, которые помогут начать игру с лучших позиций.

Кроме того, на официальном сайте Pinco Казино игроки могут найти зеркало, которое позволяет им играть, не оставляя им возможности для доступа к официальному сайту. Это особенно полезно для игроков, которые не могут играть на официальном сайте из-за ограничений на доступ.

Pinco Казино – это место, где игроки могут не только играть, но и получать удовлетворение от игры. Сайт предлагает игрокам широкий спектр азартных игр, а также различные бонусы и преимущества, что делает его одним из наиболее популярных игровых ресурсов.

Важно! Перед игрой на официальном сайте Pinco Казино или зеркале, игроки должны убедиться, что они достигли возраста 18 лет и что игра азартных игр является законной в их стране.

Pinco Казино – это официальный сайт, который предлагает игрокам широкий спектр азартных игр и различных бонусов и преимуществ.

Pinco Казино – Официальный сайт Пинко

Pinco Казино – это популярное онлайн-казино, которое предлагает игрокам широкий спектр развлекательных игр и возможностей для ставок. Официальный сайт Pinco Казино – это лучшее место для игроков, которые ищут безопасный и надежный способ играть в онлайн-казино.

На официальном сайте Pinco Казино игроки могут найти огромный выбор игр, включая слоты, карточные игры, рулетку и другие. Все игры на сайте Pinco Казино разработаны с использованием последних технологий и обеспечивают высокое качество и безопасность игры.

Один из главных преимуществ Pinco Казино – это его официальный статус. Это означает, что игроки могут быть уверены в том, что играют на официальном сайте, а не на подделке или мошенничестве. Официальный сайт Pinco Казино также обеспечивает безопасность транзакций и защищает личные данные игроков.

Pinco Казино также предлагает игрокам различные бонусы и акции, чтобы помочь им начать играть и получать наибольшую выгоду. Бонусы и акции могут включать в себя приветственные бонусы, бесплатные спины, реферальные бонусы и другие.

В целом, Pinco Казино – это отличное место для игроков, которые ищут безопасный и надежный способ играть в онлайн-казино. Официальный сайт Pinco Казино обеспечивает безопасность транзакций, защищает личные данные игроков и предлагает широкий спектр игр и возможностей для ставок.

Вход на зеркало Pinco Казино

В современном мире интернета, где каждый день появляются новые онлайн-казино, найти достоверный и надежный ресурс может быть сложной задачей. В этом случае, зеркало Pinco Казино может помочь вам в этом. В этом разделе мы рассмотрим, что такое зеркало, почему его используют и как найти достоверное зеркало Pinco Казино.

  • Преимущества использования зеркала:
    • Безопасность: зеркало обеспечивает безопасный доступ к ресурсу, не требуя ввода логина и пароля;
    • Недоступность официального сайта: если официальный сайт заблокирован или недоступен, зеркало может помочь вам получить доступ к ресурсу;
    • Удобство: зеркало может быть доступно на других языках, что упрощает доступ к ресурсу для пользователей из других стран.

Важно отметить, что не все зеркала Pinco Казино являются надежными. Некоторые из них могут быть созданы для мошенничества или распространения вирусов. Поэтому, перед использованием зеркала, рекомендуется проверить его достоверность.

  • Как найти достоверное зеркало Pinco Казино:
  • Проверьте официальный сайт Pinco Казино: официальный сайт Pinco Казино будет иметь уникальный адрес и логотип;
  • Проверьте зеркало на достоверность: проверьте, является ли зеркало официальным или созданным пользователем;
  • Проверьте зеркало на безопасность: проверьте, является ли зеркало безопасным или содержит вирусы.
  • Преимущества игроков в Pinco Казино

    В Pinco Казино официальном сайте, игроки могут насладиться уникальными преимуществами, которые делают игру на этом сайте наиболее привлекательной. Некоторые из этих преимуществ включают:

    Большой выбор игр. Pinco Казино предлагает огромный выбор игр, включая слоты, карточные игры, рулетку и другие. Это позволяет игрокам выбрать игру, которая лучше всего подходит им.

    Безопасность и конфиденциальность

    Pinco Казино обеспечивает безопасность и конфиденциальность своих игроков, используя современные технологии шифрования и защищенные соединения. Это позволяет игрокам чувствовать себя уверенно, когда они играют на этом сайте.

    Промокоды и бонусы. Pinco Казино регулярно предлагает своим игрокам различные промокоды и бонусы, которые могут помочь им увеличить свои выигрыши или получить дополнительные преимущества.

    24/7 поддержка. Pinco Казино предлагает 24/7 поддержку, чтобы помочь игрокам в случае каких-либо вопросов или проблем.

    Высокое качество игр. Pinco Казино предлагает игры высокого качества, разработанные опытными разработчиками, чтобы обеспечить игрокам наилучший игровой опыт.

    Мобильная версия. Pinco Казино предлагает мобильную версию, чтобы игроки могли играть на своем смартфоне или планшете, где бы они не были.

    Легкая регистрация. Pinco Казино предлагает легкую регистрацию, чтобы игроки могли начать играть как можно быстрее.

    В целом, Pinco Казино официальный сайт предлагает игрокам множество преимуществ, которые делают игру на этом сайте наиболее привлекательной.

    Виды игр и ставок в Pinco Казино

    В Pinco Казино предлагается широкий спектр игр и ставок, чтобы удовлетворить различные предпочтения игроков. Ниже мы рассмотрим основные виды игр и ставок, которые доступны в Pinco Казино.

    Классические игры

    Рулетка: классическая игра с pinko casino колесом и цифрами, где игроки ставят на результат выпадения.

    Бинго: игра с картами, где игроки должны найти определенные комбинации.

    Кэшбэк: игра, где игроки получают вознаграждение за каждую ставку.

    Игра
    Описание

    Рулетка Классическая игра с колесом и цифрами Бинго Игра с картами, где игроки должны найти определенные комбинации Кэшбэк Игра, где игроки получают вознаграждение за каждую ставку

    Виды ставок

    Ставки на спорт: игроки могут ставить на результаты спортивных событий, таких как футбол, баскетбол и т.д.

    Ставки на спорт: игроки могут ставить на результаты спортивных событий, таких как футбол, баскетбол и т.д.

    Ставки на лото: игроки могут ставить на результаты лотереи.

    Pinco Казино предлагает широкий спектр ставок, чтобы удовлетворить различные предпочтения игроков. Игроки могут выбрать из различных вариантов ставок, включая ставки на спорт, ставки на лото и другие.

    Бонусы и акции в Pinco Казино

    Pinco Казино – это место, где вы можете не только играть в свои любимые игры, но и получать различные бонусы и акции. Наш казино предлагает своим игрокам множество способов получения дополнительных выигрышей и преимуществ.

    Каждый новый игрок, который регистрирует свой аккаунт на нашем сайте, получает приветственный бонус в размере 100% от суммы первого депозита, не более 1000 рублей. Это отличный способ начать играть и получить дополнительные выигрыши.

    Кроме того, мы предлагаем нашим игрокам регулярные бонусы и акции, которые могут быть использованы для игры в любые игры на нашем сайте. Наш бонус-календарь – это список всех доступных бонусов и акций, которые можно использовать в течение определенного периода времени.

    Мы также предлагаем нашим игрокам программу лояльности, которая позволяет им получать дополнительные выигрыши и преимущества за свою фидельность. Каждый игрок, который играет на нашем сайте, может получать бонусы и акции за свою игру.

    Наш казино также предлагает нашим игрокам возможность участвовать в различных турнирах и конкурсах, которые могут быть использованы для игры в любые игры на нашем сайте. Наш турнир-календарь – это список всех доступных турниров и конкурсов, которые можно использовать в течение определенного периода времени.

    В целом, Pinco Казино – это место, где вы можете не только играть в свои любимые игры, но и получать различные бонусы и акции. Мы предлагаем нашим игрокам множество способов получения дополнительных выигрышей и преимуществ, чтобы они могли насладиться игрой и получать выигрыши.

    Design and Develop by Ovatheme